<?php
session_start();
include('include/config.php');
include('include/fonctions.php');
actualiser_session();
$messageErrMail = 'Page : inscription-3.php<br />';

$class1 = $class2 = $class3 = 'bouton-choix-large';

//on récupère le type de produit (durée de validité du compte
$connection = connexionBdd();
$req = $connection->prepare('SELECT `id_produit`,`nom_produit`,`tps_produit`,`prix_produit` FROM `produit`');
$req->execute();
$tabProduit = $req->fetchAll(PDO::FETCH_ASSOC);
$count = $req->rowCount();
$req->closeCursor();

if ($count < 1) {
    $_SESSION['bdd_info'] = '<div class="error">Une erreur technique est venue perturbée votre inscription. Notre équipe technique vient d\en être informée. Merci de renouveler votre opération ultérieurement.</div>';
    $_SESSION['erreurs']++;
    $messageErrMail .='Requete pour selection les infos produit HS.';
    error_log($messageErrMail, 1, $mailAdmin, $enteteErrLog);
}

//sinon on pousse vers le paiement annuel
if (isset($_GET['tarif'])) {
    $tarif = securite_tarif($_GET['tarif'], count($tabProduit), 3);
} else {
    if (isset($_SESSION['tarif'])) {
        $tarif = $_SESSION['tarif'];
    } else {
        $tarif = 3;
    }
}

//on test que l'on vient sur cette page en ayant choisi un mode de paiement de type chèque ou virement
if (isset($_GET['type'])) {
    //on vérifie que l'on récupère bien un entier, sur le nbr possible, avec comme choix par défaut le chèque.
    //Attention utilisation de la fonction secure_tarif alors que c'est un moyen de paiement
    $modePaiement = securite_tarif($_GET['type'], 4, 1);

    //on va affecter un statut de paiement
    switch ($modePaiement) {
        case 1: $paye = 2;
            $msgTypePaiement = 'chq';
            $_SESSION['aboOk']=true;
            break;
        case 2: $paye = 2;
            $msgTypePaiement = 'vir';
            $_SESSION['aboOk']=true;
            break;
        default: $paye = 1;
            $msgTypePaiement = 'ok';
            $_SESSION['aboOk']=true;
            break;
    }

    //on prépare la requête pour la mise à jour du compte prof
    $connection = connexionBdd();
    $updateProf = $connection->prepare('UPDATE `prof` SET `prof_paye` = :paye WHERE `prof_id` = :id');
    $updateProf->bindParam(':id', $_SESSION['prof_id'], PDO::PARAM_INT);
    $updateProf->bindParam(':paye', $paye, PDO::PARAM_INT);

    //on insert dans la table de jointure paiement
    $insert = $connection->prepare('INSERT INTO `paiement` (
                                        `id_paiement` ,
                                        `id_prof` ,
                                        `id_produit`,
                                        `id_mode_paiement`,
                                        `date_paiement`)
                                        VALUES(NULL, :idprof, :idproduit,:idpaiement,NOW())');

    // On rempli les paramètres
    $insert->bindValue(':idprof', $_SESSION['prof_id']);
    $insert->bindValue(':idproduit', $tarif);
    $insert->bindValue(':idpaiement', $modePaiement);
    try {
        $updateProf->execute();
        $updateProf->closeCursor();
        $insert->execute();
        $insert->closeCursor();
        header('Location: ' . ROOTPATH . '/ajout-eleve.php?msg=' . $msgTypePaiement);
    } catch (Exception $e) {
        $_SESSION['bdd_info'] = '<div class="error">Une erreur technique est venue perturbée votre inscription. Notre équipe technique vient d\en être informée. Merci de renouveler votre opération ultérieurement.</div>';
        $_SESSION['erreurs']++;
        $messageErrMail .=$e->getMessage();
        error_log($messageErrMail, 1, $mailAdmin, $enteteErrLog);
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Inscription étape 3/3 Bulletin Facile</title>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
        <meta name="description" content="3ème étape de votre inscription sur Bulletin Facile" />
        <meta name="keywords" content="inscription, bulletin, facile, connexion, login, email, password, compte, proffesseur, enseignant, ecole" />
        <meta name="author" content="Wincenty Web" />
        <link rel="icon" href="images/favicon.ico" type="image/x-icon" />
        <link rel="shortcut icon" href="images/favicon.ico" type="image/x-icon" />
        <link rel="stylesheet" href="css/style.css" />
        <link rel="stylesheet" href="css/menu.css" />
        <link rel="stylesheet" href="css/tarif.css" />
    </head>
    <body>
        <!--==============================header=================================-->
        <?php
        require_once('include/menu.php');
        ?>

        <!--==============================content================================-->
        <div class="bg1">
            <div class="bg">
                <section id="content">
                    <div class="container_12">
                        <article class="grid_12">

                            <?php
                            if (preg_match("/connexion/i", htmlspecialchars($_SERVER['HTTP_REFERER']))) {
                                echo '<h1>Renouvelez votre abonnement</h1>
                                        <p>Votre <strong>abonnement</strong> sur le site est arrivé à <strong>expiration</strong>.</p>
                                        <p>Pour continuer à <strong>utiliser le site</strong>, vous devez <strong>prolonger votre abonnement</strong>. Pour toutes questions relative à votre abonnement, vous pouvez contacter notre service client par le <a href="contact.php">formulaire de contact</a>.</p>';
                            } else {
                                echo '<h1>Inscription étape 3/3</h1>';
                            }
                            ?>

                            <h6>A - Choix de votre abonnement</h6>                 
                        </article>

                        <!--  Choix de la mensualité   -->
                        <article class='grid_12 aligncenter'>
                            <?php
                            foreach ($tabProduit as $value) {
                                if ($value['id_produit'] == $tarif) {
                                    $class = 'bouton-choix-large-selected';
                                } else {
                                    $class = 'bouton-choix-large';
                                }
                                echo '<div class="box-prix">';
                                echo '<a href="inscription-3.php?tarif=' . $value['id_produit'] . '" class="' . $class . '">' . $value['nom_produit'] . ' ' . $value['prix_produit'] . '€/mois</a>';
                                echo '</div>';
                            }
                            ?>
                        </article>


                        <!--  Choix de la mensualité   -->

                        <article class="grid_12">
                            <h6>B - Choix du mode de paiement</h6>
                        </article>

                        <?php
                        //on récupère le type de produit (durée de validité du compte
                        $connection = connexionBdd();
                        $req = $connection->prepare('SELECT `id_mode`,`nom_mode`,`img_mode` FROM `compatibilite-paiement` NATURAL JOIN `mode-paiement` WHERE `id_produit`=:id');
                        $req->bindParam(':id', $tarif, PDO::PARAM_INT);
                        $req->execute();
                        $count = $req->rowCount();

                        if ($count > 0) {
                            while ($donnees = $req->fetch(PDO::FETCH_ASSOC)) {
                                switch ($count) {
                                    case 2:
                                        $grid = 'grid_6';
                                        break;
                                    case 3:
                                        $grid = 'grid_4';
                                        break;
                                    case 4:
                                        $grid = 'grid_3';
                                        break;
                                    default:
                                        $grid = 'grid_3';
                                        break;
                                }
                                echo '<article class="' . $grid . ' maxheight2">';
                                echo '<h5 class="aligncenter">' . $donnees['nom_mode'] . '</h5>';
                                echo '<figure class="page1-img2 aligncenter"><img src="' . $donnees['img_mode'] . '" alt="Paiement par ' . $donnees['nom_mode'] . '" width="220px" height="160px" /></figure>';
                                if (($donnees['id_mode'] == 1) || ($donnees['id_mode'] == 4)) {
                                    echo '<p class="padding-top aligncenter"><a href="inscription-3.php?tarif=' . $tarif . '&type=' . $donnees['id_mode'] . '" class="button1">Choisir ce mode de paiement</a></p>';
                                } else {
                                    echo '<form action = "https://www.sandbox.paypal.com/cgi-bin/webscr" method = "post">';

                                    /* Indication du montant HT du panier ou TTC si la TVA n'est pas détaillée */
                                    echo '<input name = "amount" type = "hidden" value = "' . $tabProduit[$tarif - 1]['prix_produit'] * $tabProduit[$tarif - 1]['tps_produit'] . '" />';

                                    /* Indication de la devise */
                                    echo '<input name = "currency_code" type = "hidden" value = "EUR" />';

                                    /* Indication du montant des frais de port */
                                    echo '<input name = "shipping" type = "hidden" value = "0.00" />';

                                    /* Indication du montant de la TVA (ou 0.00) */
                                    echo '<input name = "tax" type = "hidden" value = "0.00" />';

                                    /* Indication de l'URL de retour automatique */
                                    echo '<input name = "return" type = "hidden" value = "http://www.bulletin-facile.fr/validation.php" />';

                                    /* Indication de l'URL de retour si annulation du paiement */
                                    echo '<input name = "cancel_return" type = "hidden" value = "http://www.bulletin-facile.fr/inscription-3.php?paypal=1" />';

                                    /* Indication de l'URL de retour pour contrôler le paiement */
                                    echo '<input name = "notify_url" type = "hidden" value = "http://www.bulletin-facile.fr/verif-paypal.php" />';

                                    /* Indication du type d'action */
                                    echo '<input name = "cmd" type = "hidden" value = "_xclick" />';

                                    /* Indication de l'adresse e-mail test du vendeur (a remplacer par l'e-mail de votre compte Paypal en production) */
                                    echo '<input name = "business" type = "hidden" value = "vincent.slomowicz@gmail.com" />';

                                    /* Indication du libellé de la commande qui apparaitra sur Paypal */
                                    echo '<input name = "item_name" type = "hidden" value = "Abonnement ' . $tabProduit[$tarif - 1]['tps_produit'] . ' mois [Bulletin Facile]" />';

                                    /* Indication permettant à l'acheteur de laisser un message lors du paiement */
                                    echo '<input name = "no_note" type = "hidden" value = "1" />';

                                    /* Indication de la langue */
                                    echo '<input name = "lc" type = "hidden" value = "FR" />';

                                    /* Indication du type de paiement */
                                    echo '<input name = "bn" type = "hidden" value = "PP-BuyNowBF" />';

                                    /* Indication du numéro de la commande (très important) */
                                    echo '<input name = "custom" type = "hidden" value = "' . $_SESSION['prof_id'] . '" />';

                                    /* Bouton pour valider le paiement */
                                    echo '<p class="padding-top aligncenter"><input class="button1" type = "submit" value = "Choisir ce mode de paiement" /></p>';
                                    echo '</form>';
                                }
                                echo '</article>';
                            }
                        } else {
                            echo "Actuellement aucun mode de paiement n'est disponible pour cet abonnement.";
                        }
                        $req->closeCursor();
                        ?>                       
                        <!--  Récap du prix et des modalité   -->
                        <article class='grid_12 aligncenter'>                            
                            <div class='page1-box3 aligncenter'>
                                <strong style='font-size: 24px; padding-bottom:13px; display:block;'>Récapitulatif</strong>
                                <div style='width:560px; margin: 0 auto;'>
                                    <p style='float: left;font-size:18px;'>Durée de l'abonnement : <strong><?php echo $tabProduit[$tarif - 1]['tps_produit']; ?> mois </strong></p>
                                    <p style='float: right;font-size:18px;'>Coût Total de l'abonnement : <strong><?php echo $tabProduit[$tarif - 1]['prix_produit'] * $tabProduit[$tarif - 1]['tps_produit']; ?>€</strong></p>                                     
                                </div>
                            </div>
                        </article>
                    </div>
                </section>

                <!--==============================footer=================================-->
                <?php
//                echo '<pre>';
//                print_r($GLOBALS);
//                echo '</pre>';
                require_once 'include/footer.php';
                ?>
            </div>
        </div>
    </body>
</html>